package com.arvin.service;

import com.arvin.pojo.Notice;
import com.arvin.pojo.PageBean;

import java.util.List;

public interface NoticeService {

    /**
     * 获取公告信息
     * @param noticeTitle
     * @param page
     * @param pageSize
     * @return
     */
    PageBean getNoticeInfo(String noticeTitle,String noticeType, String noticeState,
                           Integer page, Integer pageSize);

    /**
     * 根据id获取公告
     * @param noticeId
     * @return
     */
    Notice getNoticeInfoById(Integer noticeId);

    /**
     * 发布公告
     * @param notice
     */
    void publishNotice(Notice notice);

    /**
     * 修改公告
     * @param notice
     */
    void updatePublishNotice(Notice notice);

    /**
     * 删除公告
     * @param noticeId
     */
    void deleteNotice(Integer noticeId);

    /**
     * 更新公告状态
     * @param notice
     */
    void updateNoticeState(Notice notice);

    /**
     * 获取全部公告信息
     * @return
     */
    List<Notice> getAllNotice(String noticeState);
}
